/**
 * Generate time : 2011-05-12 5:27:54
 * Version : 1.0.1.V20070717
 */
package com.baosight.sczx.zm.cs.domain;

import com.baosight.iplat4j.core.ei.EiColumn;
import com.baosight.iplat4j.ep.DaoEPBase;
import java.util.HashMap;
import java.util.Map;

import com.baosight.iplat4j.util.NumberUtils;
import com.baosight.iplat4j.util.StringUtils;

/**
 * ZMCSSystemSettingCP 生产过程设置
 * 
 */
public class ZMCSSystemSettingCP extends DaoEPBase {

	private String fdKeyId = " "; /* FD_KEY_ID */
	private String fdPlanBeginDate = " "; /* 计划开始日期 */
	private String fdGetData = " "; /* 自动获取数据 */
	private String fdCoalCount = " "; /* 掘进煤统计 */
	private String fdBeginDate = " "; /* 生产统计月起始日 */
	private String fdRealYield = " "; /* 实际产量 */
	private String fdModifyStartDate = " "; /* 计划修改起始日 */
	private String fdModifyEndDate = " "; /* 计划修改终止日 */
	private Double fdMineParameter = new Double(0);		/* 采煤量计算参数*/	
	private Double fdCoalDensity = new Double(0);		/* 煤层容量*/
	private Double fdGangueDensity = new Double(0);		/* 矸石密度*/
	private String fdMineValidateFormula = " ";		/* 采煤验收总量计算公式*/
	private String fdMeasuringMethod = " ";		/* 采煤验收测量方式*/
	private String fdIsCalculateEnd = " ";		/* 是否推算终止点*/
	private String fdReportMonthMode = " "; /* 统计月计算方式 */
	private String fdMingModel = " "; /* 统计月计算方式 */
	private Double fdInstallationDays = new Double(0);		/* 安装调试天数*/
	private Double fdSametimeMineNum = new Double(0);		/* 安装调试天数*/
	/**
	 * initialize the metadata
	 */
	public void initMetaData() {
		EiColumn eiColumn;

		eiColumn = new EiColumn("fdKeyId");
		eiColumn.setPrimaryKey(true);
		eiColumn.setFieldLength(32);
		eiColumn.setDescName("FD_KEY_ID");
		eiMetadata.addMeta(eiColumn);
		
		eiColumn = new EiColumn("fdInstallationDays");
		eiColumn.setType("N");
		eiColumn.setScaleLength(0);
		eiColumn.setFieldLength(8);
		eiColumn.setDescName("安装调试天数");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdSametimeMineNum");
		eiColumn.setType("N");
		eiColumn.setScaleLength(0);
		eiColumn.setFieldLength(8);
		eiColumn.setDescName("同采面个数");
		eiMetadata.addMeta(eiColumn);
		
		eiColumn = new EiColumn("fdPlanBeginDate");
		eiColumn.setFieldLength(10);
		eiColumn.setDescName("计划开始日期");
		eiMetadata.addMeta(eiColumn);
		
		eiColumn = new EiColumn("fdGetData");
		eiColumn.setFieldLength(1);
		eiColumn.setDescName("自动获取数据");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdCoalCount");
		eiColumn.setFieldLength(1);
		eiColumn.setDescName("掘进煤统计");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdBeginDate");
		eiColumn.setFieldLength(1);
		eiColumn.setDescName("生产统计月起始日");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdRealYield");
		eiColumn.setFieldLength(1);
		eiColumn.setDescName("实际产量");
		eiMetadata.addMeta(eiColumn);
		
		eiColumn = new EiColumn("fdModifyStartDate");
		eiColumn.setFieldLength(1);
		eiColumn.setDescName("计划修改起始日");
		eiMetadata.addMeta(eiColumn);
		
		eiColumn = new EiColumn("fdModifyEndDate");
		eiColumn.setFieldLength(1);
		eiColumn.setDescName("计划修改终止日");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdMineParameter");
		eiColumn.setType("N");
		eiColumn.setScaleLength(2);
		eiColumn.setFieldLength(8);
		eiColumn.setDescName("采煤量计算参数");
		eiMetadata.addMeta(eiColumn);

		
		eiColumn = new EiColumn("fdCoalDensity");
		eiColumn.setType("N");
		eiColumn.setScaleLength(2);
		eiColumn.setFieldLength(8);
		eiColumn.setDescName("煤层容量");
		eiMetadata.addMeta(eiColumn);
		
		eiColumn = new EiColumn("fdGangueDensity");
		eiColumn.setType("N");
		eiColumn.setScaleLength(2);
		eiColumn.setFieldLength(8);
		eiColumn.setDescName("矸石密度");
		eiMetadata.addMeta(eiColumn);
		
		eiColumn = new EiColumn("fdMineValidateFormula");
		eiColumn.setFieldLength(1);	
		eiColumn.setDescName("采煤验收总量计算公式");
		eiMetadata.addMeta(eiColumn);
		
		eiColumn = new EiColumn("fdMeasuringMethod");
		eiColumn.setFieldLength(1);	
		eiColumn.setDescName("采煤验收测量方式");
		eiMetadata.addMeta(eiColumn);
		
		eiColumn = new EiColumn("fdIsCalculateEnd");
		eiColumn.setFieldLength(1);	
		eiColumn.setDescName("是否推算终止点");
		eiMetadata.addMeta(eiColumn);
		
		eiColumn = new EiColumn("fdReportMonthMode");
		eiColumn.setFieldLength(1);
		eiColumn.setDescName("统计月计算方式");
		eiMetadata.addMeta(eiColumn);
		
		eiColumn = new EiColumn("fdMingModel");
		eiColumn.setFieldLength(1);
		eiColumn.setDescName("矿井模型");
		eiMetadata.addMeta(eiColumn);
	}

	/**
	 * the constructor
	 */
	public ZMCSSystemSettingCP() {
		initMetaData();
	}

	/**
	 * get the fdKeyId - FD_KEY_ID
	 * 
	 * @return the fdKeyId
	 */
	public String getFdKeyId() {
		return this.fdKeyId;
	}

	/**
	 * set the fdKeyId - FD_KEY_ID
	 */
	public void setFdKeyId(String fdKeyId) {
		this.fdKeyId = fdKeyId;
	}
	
	
	/**
	 * get the fdSametimeMineNum - 同采面个数
	 * @return the fdSametimeMineNum
	 */
	public Double getFdSametimeMineNum() {
		return this.fdSametimeMineNum;
	}
	
	/**
	 * set the fdSametimeMineNum - 同采面个数
	 */
	public void setFdSametimeMineNum(Double fdSametimeMineNum) {
		this.fdSametimeMineNum = fdSametimeMineNum;
	}

	/**
	 * get the fdMineParameter - 安装调试天数
	 * @return the fdMineParameter
	 */
	public Double getFdInstallationDays() {
		return this.fdInstallationDays;
	}
	
	/**
	 * set the fdMineParameter - 安装调试天数
	 */
	public void setFdInstallationDays(Double fdInstallationDays) {
		this.fdInstallationDays = fdInstallationDays;
	}
	
	/**
	 * get the fdPlanBeginDate - 计划开始日期
	 * 
	 * @return the fdPlanBeginDate
	 */
	public String getFdPlanBeginDate() {
		return this.fdPlanBeginDate;
	}

	/**
	 * set the fdPlanBeginDate - 计划开始日期
	 */
	public void setFdPlanBeginDate(String fdPlanBeginDate) {
		this.fdPlanBeginDate = fdPlanBeginDate;
	}
	
	/**
	 * get the fdGetData - 自动获取数据
	 * 
	 * @return the fdGetData
	 */
	public String getFdGetData() {
		return this.fdGetData;
	}

	/**
	 * set the fdGetData - 自动获取数据
	 */
	public void setFdGetData(String fdGetData) {
		this.fdGetData = fdGetData;
	}

	/**
	 * get the fdCoalCount - 掘进煤统计
	 * 
	 * @return the fdCoalCount
	 */
	public String getFdCoalCount() {
		return this.fdCoalCount;
	}

	/**
	 * set the fdCoalCount - 掘进煤统计
	 */
	public void setFdCoalCount(String fdCoalCount) {
		this.fdCoalCount = fdCoalCount;
	}

	/**
	 * get the fdBeginDate - 生产统计月起始日
	 * 
	 * @return the fdBeginDate
	 */
	public String getFdBeginDate() {
		return this.fdBeginDate;
	}

	/**
	 * set the fdBeginDate - 生产统计月起始日
	 */
	public void setFdBeginDate(String fdBeginDate) {
		this.fdBeginDate = fdBeginDate;
	}

		/**
	 * get the fdReportMonthMode - 统计月计算方式
	 * 
	 * @return the fdReportMonthMode
	 */
	public String getFdReportMonthMode() {
		return this.fdReportMonthMode;
	}

	/**
	 * set the fdReportMonthMode - 统计月计算方式
	 */
	public void setFdReportMonthMode(String fdReportMonthMode) {
		this.fdReportMonthMode = fdReportMonthMode;
	}

	/**
	 * get the fdRealYield - 实际产量
	 * 
	 * @return the fdRealYield
	 */
	public String getFdRealYield() {
		return this.fdRealYield;
	}

	/**
	 * set the fdRealYield - 实际产量
	 */
	public void setFdRealYield(String fdRealYield) {
		this.fdRealYield = fdRealYield;
	}
	
	/**
	 * get the fdBeginDate - 计划修改起始日
	 * 
	 * @return the fdModifyStartDate
	 */
	public String getFdModifyStartDate() {
		return this.fdModifyStartDate;
	}

	/**
	 * set the fdModifyStartDate - 计划修改起始日
	 */
	public void setFdModifyStartDate(String fdModifyStartDate) {
		this.fdModifyStartDate = fdModifyStartDate;
	}

	/**
	 * get the fdBeginDate - 计划修改终止日
	 * 
	 * @return the fdModifyEndDate
	 */
	public String getFdModifyEndDate() {
		return this.fdModifyEndDate;
	}

	/**
	 * set the fdModifyStartDate - 计划修改终止日
	 */
	public void setFdModifyEndDate(String fdModifyEndDate) {
		this.fdModifyEndDate = fdModifyEndDate;
	}

	/**
	 * get the fdMineParameter - 采煤量计算参数
	 * @return the fdMineParameter
	 */
	public Double getFdMineParameter() {
		return this.fdMineParameter;
	}
	
	/**
	 * set the fdMineParameter - 采煤量计算参数
	 */
	public void setFdMineParameter(Double fdMineParameter) {
		this.fdMineParameter = fdMineParameter;
	}

	/**
	 * get the fdCoalDensity - 煤层容量
	 * @return the fdCoalDensity
	 */
	public Double getFdCoalDensity() {
		return this.fdCoalDensity;
	}
	
	/**
	 * set the fdCoalDensity - 煤层容量
	 */
	public void setFdCoalDensity(Double fdCoalDensity) {
		this.fdCoalDensity = fdCoalDensity;
	}
	
	/**
	 * get the fdGangueDensity - 矸石密度
	 * @return the fdGangueDensity
	 */
	public Double getFdGangueDensity() {
		return this.fdGangueDensity;
	}
	
	/**
	 * set the fdGangueDensity - 矸石密度
	 */
	public void setFdGangueDensity(Double fdGangueDensity) {
		this.fdGangueDensity = fdGangueDensity;
	}
	
	/**
	 * get the fdMineValidateFormula - 采煤验收总量计算公式
	 * @return the fdMineValidateFormula
	 */
	public String getFdMineValidateFormula() {
		return this.fdMineValidateFormula;
	}
	
	/**
	 * set the fdMineValidateFormula - 采煤验收总量计算公式
	 */
	public void setFdMineValidateFormula(String fdMineValidateFormula) {
		this.fdMineValidateFormula = fdMineValidateFormula;
	}
	
	/**
	 * get the fdMeasuringMethod - 采煤验收测量方式
	 * @return the fdMeasuringMethod
	 */
	public String getFdMeasuringMethod() {
		return this.fdMeasuringMethod;
	}
	
	/**
	 * set the fdMeasuringMethod - 采煤验收测量方式
	 */
	public void setFdMeasuringMethod(String fdMeasuringMethod) {
		this.fdMeasuringMethod = fdMeasuringMethod;
	}
	
	/**
	 * get the fdIsCalculateEnd - 是否推算终止点
	 * @return the fdIsCalculateEnd
	 */
	public String getFdIsCalculateEnd() {
		return this.fdIsCalculateEnd;
	}
	
	/**
	 * set the fdIsCalculateEnd - 是否推算终止点
	 */
	public void setFdIsCalculateEnd(String fdIsCalculateEnd) {
		this.fdIsCalculateEnd = fdIsCalculateEnd;
	}
	
	/**
	 * get the fdMingModel - 矿井模型
	 * @return the fdMingModel
	 */
	public String getFdMingModel() {
		return this.fdMingModel;
	}
	
	/**
	 * set the fdMingModel - 矿井模型
	 */
	public void setFdMingModel(String fdMingModel) {
		this.fdMingModel = fdMingModel;
	}
	
	/**
	 * get the value from Map
	 */
	@SuppressWarnings("rawtypes")
	public void fromMap(Map map) {

		setFdKeyId(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdKeyId")), fdKeyId));
		setFdPlanBeginDate(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdPlanBeginDate")), fdPlanBeginDate));
		setFdGetData(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdGetData")), fdGetData));
		setFdCoalCount(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdCoalCount")), fdCoalCount));
		setFdBeginDate(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdBeginDate")), fdBeginDate));
		setFdRealYield(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdRealYield")), fdRealYield));
		setFdModifyStartDate(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdModifyStartDate")), fdModifyStartDate));
		setFdModifyEndDate(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdModifyEndDate")), fdModifyEndDate));		
		setFdMineParameter(NumberUtils.toDouble(StringUtils.toString(map.get("fdMineParameter")), fdMineParameter));
		setFdCoalDensity(NumberUtils.toDouble(StringUtils.toString(map.get("fdCoalDensity")), fdCoalDensity));
		setFdGangueDensity(NumberUtils.toDouble(StringUtils.toString(map.get("fdGangueDensity")), fdGangueDensity));
		setFdMineValidateFormula(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdMineValidateFormula")), fdMineValidateFormula));
		setFdMeasuringMethod(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdMeasuringMethod")), fdMeasuringMethod));
		setFdIsCalculateEnd(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdIsCalculateEnd")), fdIsCalculateEnd));
		setFdReportMonthMode(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdReportMonthMode")), fdReportMonthMode));
		setFdInstallationDays(NumberUtils.toDouble(StringUtils.toString(map.get("fdInstallationDays")), fdInstallationDays));
		setFdMingModel(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdMingModel")), fdMingModel));
		setFdSametimeMineNum(NumberUtils.toDouble(StringUtils.toString(map.get("fdSametimeMineNum")), fdSametimeMineNum));
	}

	/**
	 * set the value to Map
	 */
	@SuppressWarnings({ "rawtypes", "unchecked" })
	public Map toMap() {

		Map map = new HashMap();
		map.put("fdKeyId", StringUtils.toString(fdKeyId, eiMetadata.getMeta("fdKeyId")));
		map.put("fdPlanBeginDate", StringUtils.toString(fdPlanBeginDate, eiMetadata.getMeta("fdPlanBeginDate")));
		map.put("fdGetData", StringUtils.toString(fdGetData, eiMetadata.getMeta("fdGetData")));
		map.put("fdCoalCount", StringUtils.toString(fdCoalCount, eiMetadata.getMeta("fdCoalCount")));
		map.put("fdBeginDate", StringUtils.toString(fdBeginDate, eiMetadata.getMeta("fdBeginDate")));
		map.put("fdRealYield", StringUtils.toString(fdRealYield, eiMetadata.getMeta("fdRealYield")));
		map.put("fdModifyStartDate", StringUtils.toString(fdModifyStartDate, eiMetadata.getMeta("fdModifyStartDate")));
		map.put("fdModifyEndDate", StringUtils.toString(fdModifyEndDate, eiMetadata.getMeta("fdModifyEndDate")));
		map.put("fdMineParameter",StringUtils.toString(fdMineParameter, eiMetadata.getMeta("fdMineParameter")));
		map.put("fdCoalDensity",StringUtils.toString(fdCoalDensity, eiMetadata.getMeta("fdCoalDensity")));	
		map.put("fdGangueDensity",StringUtils.toString(fdGangueDensity, eiMetadata.getMeta("fdGangueDensity")));	
		map.put("fdMineValidateFormula",StringUtils.toString(fdMineValidateFormula, eiMetadata.getMeta("fdMineValidateFormula")));	
		map.put("fdMeasuringMethod",StringUtils.toString(fdMeasuringMethod, eiMetadata.getMeta("fdMeasuringMethod")));	
		map.put("fdIsCalculateEnd",StringUtils.toString(fdIsCalculateEnd, eiMetadata.getMeta("fdIsCalculateEnd")));	
		map.put("fdReportMonthMode", StringUtils.toString(fdReportMonthMode, eiMetadata.getMeta("fdReportMonthMode")));
		map.put("fdMingModel", StringUtils.toString(fdMingModel, eiMetadata.getMeta("fdMingModel")));
		map.put("fdInstallationDays", StringUtils.toString(fdInstallationDays, eiMetadata.getMeta("fdInstallationDays")));
		map.put("fdSametimeMineNum", StringUtils.toString(fdSametimeMineNum, eiMetadata.getMeta("fdSametimeMineNum")));

		return map;

	}
}